package FigurasGeometricas;

/**
 *
 * @author El de la mañana
 */
public class CirculoRefactor {
    /**
     *
     */
    protected int radio,
    /**
     *
     */
    x, y; //x,y coordenadas del centro
    /**
     *
     */
    protected final double PI=3.14;

    /**
     * Crea un círculo con unos valores por defecto
     */
    
    public CirculoRefactor(){
        radio=5;
        x=0;
        y=0;
        System.out.println("Circulo creado");
    }
    
    /**
     * Crea un círculo coon unos valores dados
     * @param radio 
     * @param coordX 
     * @param coordY  
     */
    
    public CirculoRefactor(int radio, int coordX, int coordY){
        this.radio=radio;
        x=coordX;
        y=coordY;
    }
    
    /**
     * Calcula el área del círculo
     * @return double
     */
    
    public double calcular_area(){
        return PI*radio*radio;
    }
    
    /**
     * Calcula el perímetro del círculo
     * @return double
     */
    
    public double calcular_perimetro(){
        return 2*PI*radio;
    }
    
    /**
     * Comprueba si dos puntos están dentro del círculo
     * @param px int
     * @param py int
     * @return boolean
     */
    
    public boolean contiene(int px, int py){
        double d=Math.sqrt((px-x)*(px-x)+(py-y)*(py-y));
        return d<=radio;
    }
    
    /**
     *
     * @return
     */
    public int getRadio() {
        return radio;
    }

    /**
     *
     * @param radio
     */
    public void setRadio(int radio) {
        this.radio = radio;
    }

    /**
     *
     * @return
     */
    public int getX() {
        return x;
    }

    /**
     *
     * @param x
     */
    public void setX(int x) {
        this.x = x;
    }

    /**
     *
     * @return
     */
    public int getY() {
        return y;
    }

    /**
     *
     * @param y
     */
    public void setY(int y) {
        this.y = y;
    }
}
